next - previous - toc

# 1. About

There are 10 types of people in the world, Those who understand binary, and those who dont.

DataWorkshop is an editor to view and modify binary data. The editor provides different views which can be used to edit, analyze and export the binary data.
A simple hex view can be used to simulate a standard hexeditor but more complex dynamic views are possible to comfortable edit binary structure like executables or captured network traffic.
The editor provides powerful search and diff functionality and user defined transformations to modify the binary data.
Views can be filtered using the XPath query language (e.g. selecting several IP packets in a network traffic capture file)
Views can be exported in various formats for further processing. This feature can be used to convert old binary formats into modern xml tagged data.

### Features

- Mulitplatform (Windows, Linux, MacOS)
- User defined view definitions which are compiled into complex data views
- Data view can can be exported as xml
- Data view can be queried using XPath syntax to generate a new data view (e.g. selecting several IP packages according to their flags)
- Configurable data encodings used to edit and view data (e.g Hex, Decimal, IEEE 754 Reals, USAscii, EBCDIC, TimeInMillis etc.)
- Configurable data transformation (e.g. Rot13 Encoder / Decoder)
- Diff tool with bit granularity
- Find and replace with bit granularity
- Data clipboard for cut, copy and paste
- Undo/Redo
- XML based storage for persistent data
- Data conversion between different formats (e.g little endian <-> big endian, hexdump <-> binary data)
- Read and write from sockets

### Minimum Hardware & Software Requirements

- Java 1.4
- 1.0 Ghz Processor with 256MB Ram

### Known Bugs And Limitations

- too slow when editing large files (> 100MB) or using complex views
- Maximal data size 2 147 483 647 bytes (~ 2 GB)

### History

- 25.09.2003 DataWorkshop v1.1
  - redesigned view templates / DataRecognizer
  - Open/Save static views
  - Import/Export data

- 26.06.2003 DataWorkshop v1.0
  - improved the structure definition gui
  - extended compiler output to make it easier to debug structure definition
  - added palette with common structure definition elements
  - redesigned structure definition element
  - added new structure definition elements
  - fixed the view query which was completely broken
  - reworked the documentation, added a view query tutorial

- 25.11.2002 DataWorkshop v0.9
  - Text Clipboard for Text -> Data Conversion
  - Configurable automatic data recognition based on data and filename
  - Compiler Output to debug structure definitions
  - Structure definition compiler options
  - Data view query (XPath Query on xml structure)
  - Speed improvements when loading/saving structures
  - Major gui Redesign (Automatic resizing of data encoding fields, BrowserView, Fixed Keyboard navigation)
  - new option to display offset as MB.KB.Bytes.Bits
  - new data encodings: IEEE754 Floats, TimeInMillis
  - made old data encodings more configurable: radix can be choosen from 2 -20
  - new structure definition elements: Static Aligned Field, Pointer Aligned Field

- 13.06.2002 DataWorkshop v0.85
  - Data view can be saved in different formats (xml, html, text)
  - new data transformers: Not, Negate, Map
  - new data encodings: EBCDIC
  - Changed TextFields to Spinners
  - Speed improvements when loading/saving structures and templates

- 21.04.2002 DataWorkshop v0.8
  - Added data transformers
  - Switched from binary to XML serialization
  - Changed SplitWindowView to InternalFrameView
  - Read and write from sockets

- 11.03.2001 DataWorkshop v0.51
  - bug fixes

- 01.10.2000 Dataworkshop v0.5
  - first public release

### License

This software is being distributed as Freeware. It may be freely used, copied and distributed as long as it is not sold, and all original files are included, including this license. By using this software, you agree to these terms and the terms of the Disclaimer below:

### Disclaimer

This software is provided "as is" and any expressed or implied warranties, including, but not limited to, the implied warranties of merchantibility and fitness for a particular purpose are disclaimed. In no event shall the author be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including, but not limited to, procurement of substitute goods or services; loss of use, data, or profits; or business interruption) however caused and on any theory of liability, whether in contract, strict liability, or tort (including negligence or otherwise) arising in any way out of the use of this software, even if advised of the possibility of such damage.

next - previous - toc